import turtle
def drawGap():
    turtle.penup()
    turtle.fd(5)
def drawLine(draw):
    drawGap()
    turtle.pendown() if draw else turtle.penup()
    turtle.fd(40)
    drawGap()
    turtle.right(90)
def drawDigit(d, color):
    turtle.pencolor(color)
    # 绘制七段数码管的7个段
    drawLine(True) if d in [2, 3, 4, 5, 6, 8, 9] else drawLine(False)  # a段
    drawLine(True) if d in [0, 1, 3, 4, 5, 6, 7, 8, 9] else drawLine(False)  # b段
    drawLine(True) if d in [0, 2, 3, 5, 6, 8, 9] else drawLine(False)  # c段
    drawLine(True) if d in [0, 2, 6, 8] else drawLine(False)  # d段
    turtle.left(90)
    drawLine(True) if d in [0, 4, 5, 6, 8, 9] else drawLine(False)  # e段
    drawLine(True) if d in [0, 2, 3, 5, 6, 7, 8, 9] else drawLine(False)  # f段
    drawLine(True) if d in [0, 1, 2, 3, 4, 7, 8, 9] else drawLine(False)  # g段
    turtle.left(180)
    turtle.penup()
    turtle.fd(20)
def drawDate(date):
    colors = ["red"] * 4 + ["green"] * 2 + ["blue"] * 2  # 2016(红),09(绿),25(蓝)
    color_index = 0

    for i in date:
        if i == '年':
            turtle.write('年', font=("Arial", 18, "normal"))
            turtle.fd(40)
            color_index = 4  # 切换到绿色部分
        elif i == '月':
            turtle.write('月', font=("Arial", 18, "normal"))
            turtle.fd(40)
            color_index = 6  # 切换到蓝色部分
        elif i == '日':
            turtle.write('日', font=("Arial", 18, "normal"))
        else:
            drawDigit(eval(i), colors[color_index])
            color_index += 1


def main():
    turtle.setup(800, 350, 200, 200)
    turtle.penup()
    turtle.fd(-300)
    turtle.pensize(5)
    drawDate("2016年09月25日")
    turtle.hideturtle()
    turtle.done()


main()